home *** CD-ROM | disk | FTP | other *** search
/ Visual Basic Source Code / Visual Basic Source Code.iso / vbsource / regedit / regdemo.frm < prev    next >
Text File  |  1995-10-18  |  9KB  |  272 lines

  1. VERSION 4.00
  2. Begin VB.Form Form1 
  3.    Caption         =   "Win32 RegDemo"
  4.    ClientHeight    =   4980
  5.    ClientLeft      =   1116
  6.    ClientTop       =   1836
  7.    ClientWidth     =   7584
  8.    Height          =   5352
  9.    Icon            =   "REGDEMO.frx":0000
  10.    Left            =   1068
  11.    LinkTopic       =   "Form1"
  12.    ScaleHeight     =   4980
  13.    ScaleWidth      =   7584
  14.    Top             =   1512
  15.    Width           =   7680
  16.    Begin VB.TextBox Text1 
  17.       BackColor       =   &H8000000F&
  18.       Height          =   288
  19.       Left            =   180
  20.       Locked          =   -1  'True
  21.       TabIndex        =   5
  22.       Text            =   "My Computer"
  23.       Top             =   4560
  24.       Width           =   7272
  25.    End
  26.    Begin ComctlLib.ListView ListView1 
  27.       Height          =   3672
  28.       Left            =   3480
  29.       TabIndex        =   4
  30.       Top             =   300
  31.       Width           =   3132
  32.       _Version        =   65536
  33.       _ExtentX        =   5525
  34.       _ExtentY        =   6477
  35.       _StockProps     =   205
  36.       ForeColor       =   -2147483640
  37.       BackColor       =   -2147483643
  38.       Appearance      =   1
  39.       Icons           =   ""
  40.       LabelEdit       =   1
  41.       LabelWrap       =   0   'False
  42.       SmallIcons      =   "ImageList1"
  43.       View            =   3
  44.    End
  45.    Begin ComctlLib.ImageList ImageList1 
  46.       Left            =   7020
  47.       Top             =   4380
  48.       _Version        =   65536
  49.       _ExtentX        =   804
  50.       _ExtentY        =   804
  51.       _StockProps     =   1
  52.       BackColor       =   -2147483643
  53.       ImageWidth      =   16
  54.       ImageHeight     =   16
  55.       MaskColor       =   -2147483643
  56.       NumImages       =   6
  57.       i1              =   "REGDEMO.frx":030A
  58.       i2              =   "REGDEMO.frx":04C1
  59.       i3              =   "REGDEMO.frx":0678
  60.       i4              =   "REGDEMO.frx":0B6F
  61.       i5              =   "REGDEMO.frx":0D26
  62.       i6              =   "REGDEMO.frx":0EDD
  63.    End
  64.    Begin ComctlLib.TreeView TreeView1 
  65.       Height          =   3672
  66.       Left            =   180
  67.       TabIndex        =   3
  68.       Top             =   300
  69.       Width           =   3192
  70.       _Version        =   65536
  71.       _ExtentX        =   5630
  72.       _ExtentY        =   6477
  73.       _StockProps     =   196
  74.       Appearance      =   1
  75.       BorderStyle     =   1
  76.       ImageList       =   "ImageList1"
  77.       Indentation     =   2
  78.       LabelEdit       =   1
  79.       LineStyle       =   1
  80.       PathSeparator   =   "\"
  81.       Sorted          =   -1  'True
  82.       Style           =   7
  83.    End
  84.    Begin VB.Label Label4 
  85.       Appearance      =   0  'Flat
  86.       Caption         =   "Double-Click a Value to edit it"
  87.       ForeColor       =   &H80000008&
  88.       Height          =   252
  89.       Left            =   4020
  90.       TabIndex        =   2
  91.       Top             =   4200
  92.       Width           =   3312
  93.    End
  94.    Begin VB.Label Label3 
  95.       Appearance      =   0  'Flat
  96.       Caption         =   "Double-Click a Key to expand it"
  97.       ForeColor       =   &H80000008&
  98.       Height          =   252
  99.       Left            =   120
  100.       TabIndex        =   1
  101.       Top             =   4200
  102.       Width           =   3612
  103.    End
  104.    Begin VB.Label Label1 
  105.       Appearance      =   0  'Flat
  106.       Caption         =   "Key Name"
  107.       ForeColor       =   &H80000008&
  108.       Height          =   192
  109.       Left            =   60
  110.       TabIndex        =   0
  111.       Top             =   60
  112.       Width           =   1272
  113.    End
  114. End
  115. Attribute VB_Name = "Form1"
  116. Attribute VB_Creatable = False
  117. Attribute VB_Exposed = False
  118. Option Explicit
  119. Dim OsVers As OsVersionInfo
  120.  
  121.  
  122.  
  123. Private Sub Form_Load()
  124.     Width = 600 * Screen.TwipsPerPixelX
  125.     CenterForm Me
  126.     Dim nodX As Node
  127.     Dim ClmHdr As ColumnHeader
  128.     
  129.     '-----------------------------------------------------
  130.     ' add columns to listview control
  131.     '-----------------------------------------------------
  132.     Set ClmHdr = ListView1.ColumnHeaders.Add()
  133.     ClmHdr.Text = "Name"
  134.     ClmHdr.Width = ListView1.Width / 3
  135.     Set ClmHdr = Me.ListView1.ColumnHeaders.Add()
  136.     ClmHdr.Text = "Data"
  137.     ClmHdr.Width = 3 * ListView1.Width / 2
  138.     '-----------------------------------------------------
  139.     'First we find out what Windows is running. There are a
  140.     'couple of registry keys in Win95 that are not present
  141.     'in Windows NT
  142.     '-----------------------------------------------------
  143.     OsVers.dwVersionInfoSize = 148&
  144.     lTempLong = GetVersionEx(OsVers)
  145.     Select Case OsVers.dwPlatform
  146.         Case VER_PLATFORM_WIN32_NT
  147.             iWinVers = WinNt
  148.         Case VER_PLATFORM_WIN32_WINDOWS
  149.             iWinVers = Win32
  150.         Case Else 'Shouldn't happen
  151.             MsgBox "This program is intended only for use with 32-bit Windows versions."
  152.             Unload Form1
  153.     End Select
  154.        
  155.     '-----------------------------------------------------
  156.     'Start the TreeView with a toplevel key
  157.     '-----------------------------------------------------
  158.     
  159.     Set nodX = TreeView1.Nodes.Add(, , "main", "My Computer", 3)
  160.     
  161.     '-----------------------------------------------------
  162.     'Put in Public main keys
  163.     '-----------------------------------------------------
  164.     
  165.     Set nodX = TreeView1.Nodes.Add("main", tvwChild, "HKEY_CLASSES_ROOT", "HKEY_CLASSES_ROOT", 1)
  166.     nodX.EnsureVisible 'Forces the tree open to this level
  167.     nodX.ExpandedImage = 2
  168.     nodX.SelectedImage = 2
  169.     RegEnumKeys nodX, False 'Enumerate a single rgeSubKey, to put a + on the key
  170.     Set nodX = TreeView1.Nodes.Add("main", tvwChild, "HKEY_CURRENT_USER", "HKEY_CURRENT_USER", 1)
  171.     nodX.ExpandedImage = 2
  172.     nodX.SelectedImage = 2
  173.     RegEnumKeys nodX, False
  174.     Set nodX = TreeView1.Nodes.Add("main", tvwChild, "HKEY_LOCAL_MACHINE", "HKEY_LOCAL_MACHINE", 1)
  175.     nodX.ExpandedImage = 2
  176.     nodX.SelectedImage = 2
  177.     RegEnumKeys nodX, False
  178.     Set nodX = TreeView1.Nodes.Add("main", tvwChild, "HKEY_USERS", "HKEY_USERS", 1)
  179.     nodX.ExpandedImage = 2
  180.     nodX.SelectedImage = 2
  181.     RegEnumKeys nodX, False
  182.     
  183.     '-----------------------------------------------------
  184.     'Put in version-specific main keys
  185.     'HKEY_PERFORMANCE_DATA does not respond in a normal fashion
  186.     'to key queries.  Note it does not appear in REGEDT32.
  187.     'If iWinVers = WinNT Then
  188.         'treeview1.AddItem "HKEY_PERFORMANCE_DATA"
  189.     'End If
  190.     '-----------------------------------------------------
  191.     If iWinVers = Win32 Then
  192.         Set nodX = TreeView1.Nodes.Add("main", tvwChild, "HKEY_CURRENT_CONFIG", "HKEY_CURRENT_CONFIG", 1)
  193.         nodX.ExpandedImage = 2
  194.         nodX.SelectedImage = 2
  195.         RegEnumKeys nodX, False
  196.         Set nodX = TreeView1.Nodes.Add("main", tvwChild, "HKEY_DYN_DATA", "HKEY_DYN_DATA", 1)
  197.         nodX.ExpandedImage = 2
  198.         nodX.SelectedImage = 2
  199.         RegEnumKeys nodX, False
  200.     End If
  201.     '-----------------------------------------------------
  202.     'Setup hourglass cursor
  203.     '-----------------------------------------------------
  204.     iWaitCursor = LoadCursor(0, IDC_WAIT)
  205.  
  206. End Sub
  207.  
  208. Private Sub Form_Resize()
  209.  
  210.     '-----------------------------------------------------
  211.     'Resize controls when the user resizes the form.
  212.     '-----------------------------------------------------
  213.     On Error GoTo ReSizeError
  214.     TreeView1.Move 60, TreeView1.Top, (ScaleWidth / 2) - 300, ScaleHeight - 1200
  215.     ListView1.Move TreeView1.Width + 90, TreeView1.Top, TreeView1.Width + 480, TreeView1.Height
  216.     
  217.     Label1.Left = TreeView1.Left + 60
  218.     Label3.Move 90, TreeView1.Top + TreeView1.Height + 150
  219.     Label4.Move ListView1.Left + 90, Label3.Top
  220.     
  221.     Text1.Move TreeView1.Left, Label3.Top + Label3.Height + 150, ScaleWidth - 2 * TreeView1.Left
  222.     Exit Sub
  223. ReSizeError:
  224.     Exit Sub
  225.  
  226. End Sub
  227.  
  228. Private Sub listview1_DblClick()
  229.     ' if nothing selected get out
  230.     If Not (ListView1.SelectedItem Is Nothing) Then
  231.         '----------------------------------------------------------
  232.         'Call EditRegValue to load